package com.qzsoft.zhjd.materiel.modules.materieldatasend.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.qzsoft.zhjd.materiel.modules.materieldatasend.dto.MaterielSendForCategoryDto;
import com.qzsoft.zhjd.materiel.modules.materieldatasend.dto.MaterielSendForItemDto;

/**
 * @ClassName MaterielDataSendMapper
 * @Description 发料数据库接口
 * @author linhuawei
 * @since 2022-04-21
 */
@Mapper
public interface MaterielDataSendMapper {

    /**
     * @Title countForCategory
     * @Description 按照分类统计发料情况
     * @param page   分页条件
     * @param params 查询条件
     * @return 按照分类统计发料情况
     */
    public IPage<MaterielSendForCategoryDto> countForCategory(IPage<MaterielSendForCategoryDto> page,
            @Param("params") Map<String, Object> params);

    /**
     * @Title countForCategory
     * @Description 按照分类统计发料情况
     * @param params 查询条件
     * @return 按照分类统计发料情况
     */
    public List<MaterielSendForCategoryDto> countForCategory(@Param("params") Map<String, Object> params);

    /**
     * @Title countForItem
     * @Description 按照明细统计发料情况
     * @param page   分页条件
     * @param params 查询条件
     * @return 按照明细统计发料情况
     */
    public IPage<MaterielSendForItemDto> countForItem(IPage<MaterielSendForItemDto> page,
            @Param("params") Map<String, Object> params);

    /**
     * @Title countForItem
     * @Description 按照明细统计发料情况
     * @param page   分页条件
     * @param params 查询条件
     * @return 按照明细统计发料情况
     */
    public List<MaterielSendForItemDto> countForItem(@Param("params") Map<String, Object> params);

}
